此函数在
4.1.0
或更高版本中已废弃, 请移步http_compression
在新版本中使用http_compression
配置项取代了gzip
方法。主要原因是gzip()
方法未判断浏览器客户端传入的Accept-Encoding
头,如果客户端不支持gzip
压缩,强行使用会导致客户端无法解压。
全新的http_compression
配置项会根据客户端Accept-Encoding
头,自动选择是否压缩,并自动选择最佳的压缩算法。
启用Http GZIP
压缩。压缩可以减小HTML
内容的尺寸,有效节省网络带宽,提高响应时间。必须在write/end
发送内容之前执行gzip
,否则会抛出错误。
swoole_http_response->gzip(int $level = 1);
$level
压缩等级,范围是1-9
,等级越高压缩后的尺寸越小,但CPU
消耗更多。默认为1- 调用
gzip
方法后,底层会自动添加Http
编码头,PHP代码中不应当再行设置相关Http头
gzip
压缩在1.7.14
以上版本可用
jpg/png/gif
格式的图片已经经过压缩,无需再次压缩
gzip
功能依赖zlib
库,在编译swoole
时底层会检测系统是否存在zlib
,如果不存在,gzip
方法将不可用。
可以使用yum
或apt-get
安装zlib
库:
sudo apt-get install libz-dev